Require pango 1.47.0
authorSimon McVittie <smcv@debian.org>
Wed, 4 Nov 2020 15:37:02 +0000 (15:37 +0000)
committerSimon McVittie <smcv@debian.org>
Wed, 4 Nov 2020 15:37:02 +0000 (15:37 +0000)
debian/control
debian/control.in
debian/patches/debian/Partially-revert-fontchooser-Add-user-filtering.patch [deleted file]
debian/patches/debian/Revert-fontchooser-Determine-sample-text-intelligently.patch [deleted file]
debian/patches/series

index 7f0be08af1c3b4f793e54c6409767bbea01cdfb5..131ec89840a22021c7ef0e0555b44ffe769b5074 100644 (file)
@@ -27,7 +27,7 @@ Build-Depends: adwaita-icon-theme <!nocheck>,
                libgraphene-1.0-dev (>= 1.9.1),
                libharfbuzz-dev (>= 0.9),
                libjson-glib-dev,
-               libpango1.0-dev (>= 1.45.5),
+               libpango1.0-dev (>= 1.47.0),
                librest-dev,
                librsvg2-common <!nocheck>,
                librsvg2-dev,
@@ -154,7 +154,7 @@ Depends: gir1.2-gtk-4.0 (= ${binary:Version}),
          libgdk-pixbuf2.0-dev (>= 2.30.0),
          libglib2.0-dev (>= 2.65.0),
          libgraphene-1.0-dev (>= 1.5.1),
-         libpango1.0-dev (>= 1.45.5),
+         libpango1.0-dev (>= 1.47.0),
          libwayland-dev (>= 1.9.91) [linux-any],
          libx11-dev,
          libxcomposite-dev,
index 71d5a111a8b40494264d89f181eb49b098ecf941..e7fc78c181e9a039a2e8a6d2c458a9d7ff947a8a 100644 (file)
@@ -27,7 +27,7 @@ Build-Depends: adwaita-icon-theme <!nocheck>,
                libgraphene-1.0-dev (>= 1.9.1),
                libharfbuzz-dev (>= 0.9),
                libjson-glib-dev,
-               libpango1.0-dev (>= 1.45.5),
+               libpango1.0-dev (>= 1.47.0),
                librest-dev,
                librsvg2-common <!nocheck>,
                librsvg2-dev,
@@ -154,7 +154,7 @@ Depends: gir1.2-gtk-4.0 (= ${binary:Version}),
          libgdk-pixbuf2.0-dev (>= 2.30.0),
          libglib2.0-dev (>= 2.65.0),
          libgraphene-1.0-dev (>= 1.5.1),
-         libpango1.0-dev (>= 1.45.5),
+         libpango1.0-dev (>= 1.47.0),
          libwayland-dev (>= 1.9.91) [linux-any],
          libx11-dev,
          libxcomposite-dev,
diff --git a/debian/patches/debian/Partially-revert-fontchooser-Add-user-filtering.patch b/debian/patches/debian/Partially-revert-fontchooser-Add-user-filtering.patch
deleted file mode 100644 (file)
index 6e4031f..0000000
+++ /dev/null
@@ -1,62 +0,0 @@
-From: Simon McVittie <smcv@debian.org>
-Date: Mon, 12 Oct 2020 11:42:33 +0100
-Subject: Partially revert "fontchooser: Add user filtering"
-
-Add some #if 0 to stub out more code paths that need Pango 1.47.
-
-This partially reverts commit 09604eb3eb3928429cceeeb235eb4ff3a0bd5169.
-
-Forwarded: not-needed
----
- gtk/gtkfontchooserwidget.c | 10 +++++-----
- 1 file changed, 5 insertions(+), 5 deletions(-)
-
-diff --git a/gtk/gtkfontchooserwidget.c b/gtk/gtkfontchooserwidget.c
-index 293e64e..3031cd1 100644
---- a/gtk/gtkfontchooserwidget.c
-+++ b/gtk/gtkfontchooserwidget.c
-@@ -361,7 +361,7 @@ user_filter_cb (gpointer item,
-       !pango_font_family_is_monospace (family))
-     return FALSE;
--#ifdef HAVE_PANGOFT
-+#if 0
-   if (self->filter_by_language &&
-       self->filter_language)
-     {
-@@ -892,7 +892,7 @@ axis_free (gpointer v)
-   g_free (a);
- }
--#ifdef HAVE_PANGOFT
-+#if 0
- static void
- select_added (GListModel *model,
-               guint       position,
-@@ -989,7 +989,7 @@ add_to_fontlist (GtkWidget     *widget,
-   n = gtk_slice_list_model_get_size (model);
--#ifdef HAVE_PANGOFT
-+#if 0
-   for (i = n; i < n + 10; i++)
-     {
-       gpointer item = g_list_model_get_item (child_model, i);
-@@ -1035,7 +1035,7 @@ update_fontlist (GtkFontChooserWidget *self)
-   g_object_unref (model);
- }
--#ifdef HAVE_PANGOFT
-+#if 0
- static void
- setup_lang_item (GtkSignalListItemFactory *factory,
-                  gpointer                  item,
-@@ -1166,7 +1166,7 @@ gtk_font_chooser_widget_init (GtkFontChooserWidget *self)
-   gtk_custom_filter_set_filter_func (self->user_filter, user_filter_cb, self, NULL);
--#ifdef HAVE_PANGOFT
-+#if 0
-   setup_language_list (self);
- #else
-   gtk_widget_hide (GTK_WIDGET (self->language_button));
diff --git a/debian/patches/debian/Revert-fontchooser-Determine-sample-text-intelligently.patch b/debian/patches/debian/Revert-fontchooser-Determine-sample-text-intelligently.patch
deleted file mode 100644 (file)
index 1484323..0000000
+++ /dev/null
@@ -1,211 +0,0 @@
-From: Simon McVittie <smcv@debian.org>
-Date: Mon, 12 Oct 2020 10:50:18 +0100
-Subject: Revert "fontchooser: Determine sample text intelligently"
-
-Debian doesn't have the Pango 1.47 development branch yet.
-
-This reverts commit 69d5dc7c9a3f704ba9d423035864382fea390d67.
-
-Forwarded: not-needed
----
- gtk/gtkfontchooserwidget.c | 137 +--------------------------------------------
- meson.build                |   2 +-
- 2 files changed, 2 insertions(+), 137 deletions(-)
-
-diff --git a/gtk/gtkfontchooserwidget.c b/gtk/gtkfontchooserwidget.c
-index 254752f..293e64e 100644
---- a/gtk/gtkfontchooserwidget.c
-+++ b/gtk/gtkfontchooserwidget.c
-@@ -65,9 +65,6 @@
- #include "gtkstringsorter.h"
- #include <hb-ot.h>
--#if defined(HAVE_PANGOFT) && defined(HAVE_HARFBUZZ)
--#include <pango/pangofc-font.h>
--#endif
- #include "language-names.h"
- #include "script-names.h"
-@@ -119,7 +116,6 @@ struct _GtkFontChooserWidget
-   GtkWidget       *font_name_label;
-   char            *preview_text;
-   gboolean         show_preview_entry;
--  gboolean         preview_text_set;
-   GtkWidget *size_label;
-   GtkWidget *size_spin;
-@@ -232,7 +228,6 @@ gtk_font_chooser_widget_set_property (GObject         *object,
-       break;
-     case GTK_FONT_CHOOSER_PROP_PREVIEW_TEXT:
-       gtk_font_chooser_widget_set_preview_text (fontchooser, g_value_get_string (value));
--      fontchooser->preview_text_set = TRUE;
-       break;
-     case GTK_FONT_CHOOSER_PROP_SHOW_PREVIEW_ENTRY:
-       gtk_font_chooser_widget_set_show_preview_entry (fontchooser, g_value_get_boolean (value));
-@@ -545,130 +540,6 @@ resize_by_scroll_cb (GtkEventControllerScroll *controller,
-                             gtk_adjustment_get_step_increment (adj) * dx);
- }
--static void
--maybe_update_preview_text (GtkFontChooserWidget *self,
--                           PangoFontFace        *face,
--                           PangoFontDescription *desc)
--{
--#if defined(HAVE_PANGOFT) && defined(HAVE_HARFBUZZ)
--  PangoContext *context;
--  PangoFont *font;
--  const char *sample;
--
--  /* If the user has typed text into the entry, we don't touch it */
--  if (self->preview_text_set)
--    return;
--
--  if (self->filter_by_language && self->filter_language)
--    {
--      sample = pango_language_get_sample_string (self->filter_language);
--      gtk_font_chooser_widget_set_preview_text (self, sample);
--      return;
--    }
--
--  /* We do the work only once, and cache the result on the PangoFontFace */
--  sample = (const char *)g_object_get_data (G_OBJECT (face), "gtk-sample-text");
--  if (sample)
--    {
--      gtk_font_chooser_widget_set_preview_text (self, sample);
--      return;
--    }
--
--  context = gtk_widget_get_pango_context (GTK_WIDGET (self));
--  font = pango_context_load_font (context, desc);
--
--  if (PANGO_IS_FC_FONT (font))
--    {
--      PangoLanguage **languages;
--      GHashTable *langs = NULL;
--      PangoLanguage *default_lang;
--      PangoLanguage *alt_default = NULL;
--      PangoLanguage *lang = NULL;
--      int i;
--      const char *p;
--
--      default_lang = pango_language_get_default ();
--      p = pango_language_to_string (default_lang);
--
--      /* The default language tends to be of the form en-us.
--       * Since fontconfig languages just have the language part,
--       * and we want to use direct pointer comparisons, we need
--       * an PangoLanguage for the shortened default language.
--       */
--      if (strchr (p, '-'))
--        {
--          char q[10];
--          for (i = 0; p[i] != '-' && i < 9; i++)
--            q[i] = p[i];
--          q[i] = '\0';
--          alt_default = pango_language_from_string (q);
--        }
--
--      languages = pango_fc_font_get_languages (PANGO_FC_FONT (font));
--
--      /* If the font supports the default language, just use it. */
--      for (i = 0; languages[i]; i++)
--        {
--          if (languages[i] == default_lang || languages[i] == alt_default)
--            {
--              lang = default_lang;
--              goto found;
--            }
--        }
--
--      /* Otherwise, we make a list of representative languages */
--      langs = g_hash_table_new (NULL, NULL);
--
--      for (i = 0; languages[i]; i++)
--        {
--          const PangoScript *scripts;
--          int num, j;
--
--          scripts = pango_language_get_scripts (languages[i], &num);
--          for (j = 0; j < num; j++)
--            {
--              lang = pango_script_get_sample_language (scripts[j]);
--              if (lang)
--                g_hash_table_add (langs, lang);
--            }
--        }
--
--      /* ... and compare it to the users default and preferred languages */
--      if (g_hash_table_contains (langs, default_lang) ||
--          g_hash_table_contains (langs, alt_default))
--        {
--          lang = default_lang;
--        }
--      else
--        {
--          PangoLanguage **preferred;
--
--          preferred = pango_language_get_preferred ();
--          if (preferred)
--            {
--              for (i = 0; preferred[i]; i++)
--                {
--                  if (g_hash_table_contains (langs, preferred[i]))
--                    {
--                      lang = preferred[i];
--                      break;
--                    }
--                }
--            }
--        }
--      g_hash_table_unref (langs);
--
--found:
--      sample = pango_language_get_sample_string (lang);
--      gtk_font_chooser_widget_set_preview_text (self, sample);
--      g_object_set_data (G_OBJECT (face), "gtk-sample-text", (gpointer)sample);
--    }
--
--  g_object_unref (font);
--#endif
--}
--
--
- static void
- selection_changed_cb (GtkSingleSelection   *selection,
-                       GParamSpec           *pspec,
-@@ -689,11 +560,8 @@ selection_changed_cb (GtkSingleSelection   *selection,
-       desc = pango_font_face_describe (face);
-       pango_font_description_set_variations (self->font_desc, NULL);
-       gtk_font_chooser_widget_merge_font_desc (self, desc);
--      g_simple_action_set_enabled (G_SIMPLE_ACTION (self->tweak_action), TRUE);
--
--      maybe_update_preview_text (self, face, desc);
--
-       pango_font_description_free (desc);
-+      g_simple_action_set_enabled (G_SIMPLE_ACTION (self->tweak_action), TRUE);
-     }
-   else
-     {
-@@ -2374,9 +2242,6 @@ static void
- gtk_font_chooser_widget_set_preview_text (GtkFontChooserWidget *fontchooser,
-                                           const char           *text)
- {
--  if (fontchooser->preview_text == text)
--    return;
--
-   g_free (fontchooser->preview_text);
-   fontchooser->preview_text = g_strdup (text);
-diff --git a/meson.build b/meson.build
-index fa39070..b16fafb 100644
---- a/meson.build
-+++ b/meson.build
-@@ -23,7 +23,7 @@ else
- endif
- glib_req           = '>= @0@.@1@.@2@'.format(glib_major_req, glib_minor_req, glib_micro_req)
--pango_req          = '>= 1.47.0' # keep this in sync with .gitlab-ci/test-msys.sh
-+pango_req          = '>= 1.45.5'
- fribidi_req        = '>= 0.19.7'
- cairo_req          = '>= 1.14.0'
- gdk_pixbuf_req     = '>= 2.30.0'
index 13c57d766b83f67289d36ec302a04f54a3f71a16..b496eced3c219a99ac6a67f07b6ed6a7cb03ef3e 100644 (file)
@@ -1,3 +1 @@
 Require-gtk-doc-1.33.patch
-debian/Revert-fontchooser-Determine-sample-text-intelligently.patch
-debian/Partially-revert-fontchooser-Add-user-filtering.patch